Digital filters have been available for many years. Digital signal processing (or time series analysis) is employed in many diverse fields and is extremely useful where a great deal of data must be filtered. Examples of such data are digitized photos and voice data which can be "computer enhanced." Digital filters process information by performing a predetermined set of arithmetic operations on digitally coded samples of that information. More specifically, digital filtering consists of taking what are typically equidistant discrete-time samples of a continuous-time function, or values of some discrete-time process, and performing operations such as discrete-time delay, multiplication by a constant and addition to obtain the desired result.
An advantage of digital filters as signal processing devices is that they can be used to process data from several sources or channels simultaneously. This is generally accomplished by applying samples from each of the sources to the filter in a predetermined sequence, such as by means of time division multiplexing of the samples. By providing several sets of filter coefficients, it is possible to process data from each source using a different transfer function.
A typical digital filter is a finite impulse response (FIR) filter. There are others, including infinite impulse response filters. FIR filters have operated with serial stream delays. These architectures tend to limit the speed of the sum-of-products operation used to implement the convolution sum equation.
FIR filters perform a sum-of-products operation to implement the convolution sum. The convolution equation is represented as follows: EQU y(n)=h(n)*(x) (Eq. 1)
where * represents the convolution operator. The convolution sum is further represented by the equation: ##EQU1## These are the well recognized and standard convolution equations.
Faster filter speeds have been realized for the use of serial stream data entry where the input data is operated on in a parallel fashion for the use of many multipliers/accumulators. This has been one of the more common digital filter architectures. It uses a single pipeline of many multipliers/accumulators to achieve the sum-of-products operation.
Expanding prior art filters for additional channels and additional coefficients to operate on the input data has been cumbersome at best. Size and operational complexities have tended to limit the number of channels and, more importantly, the speed at which these digital filters can be made to operate.